package cn.uexpo.lhz.dao;

import cn.uexpo.lhz.domain.EquipmentTraffic;
import cn.uexpo.lhz.domain.EquipmentTrafficExample;
import java.util.List;

import cn.uexpo.lhz.domain.vo.EquipmentTrafficVo;
import org.apache.ibatis.annotations.Param;

public interface EquipmentTrafficMapper {
    long countByExample(EquipmentTrafficExample example);

    int deleteByExample(EquipmentTrafficExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(EquipmentTraffic record);

    int insertSelective(EquipmentTraffic record);

    List<EquipmentTraffic> selectByExampleWithBLOBs(EquipmentTrafficExample example);

    List<EquipmentTraffic> selectByExample(EquipmentTrafficExample example);

    EquipmentTraffic selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") EquipmentTraffic record, @Param("example") EquipmentTrafficExample example);

    int updateByExampleWithBLOBs(@Param("record") EquipmentTraffic record, @Param("example") EquipmentTrafficExample example);

    int updateByExample(@Param("record") EquipmentTraffic record, @Param("example") EquipmentTrafficExample example);

    int updateByPrimaryKeySelective(EquipmentTraffic record);

    int updateByPrimaryKeyWithBLOBs(EquipmentTraffic record);

    int updateByPrimaryKey(EquipmentTraffic record);

    // 根据多个字段进行模糊查询
    List<EquipmentTraffic> listShow(EquipmentTraffic equipmentTraffic);

    // 根据多个字段进行查询
    List<EquipmentTraffic> listS(EquipmentTraffic equipmentTraffic);

    //新添方法  添加数据 staffid去重
    long countByStaffidExample(EquipmentTrafficExample example);

    //新添方法  添加数据 身份证号去重
    long countByIdcExample(EquipmentTrafficExample example);

    //根据日期查询
    List<EquipmentTraffic> selectByDate(EquipmentTraffic equipmentTraffic);

    //根据日期查询加模糊查询
    List<EquipmentTraffic> listSelectByDate(EquipmentTraffic equipmentTraffic);

    //查询通行结果去重
    List<String> selectDistinctResults();

    List<EquipmentTrafficVo> listEquipmentTrafficVo(EquipmentTrafficVo equipmentTrafficVo);

    Integer count();
}
